Encoding apparatus and encoding method of multiple input multiple output communication system

ABSTRACT

When precoding information corresponding to data items of respective layers to be transmitted is received from an upper layer, an encoding apparatus of a multiple input multiple output (MIMO) communication system selects a precoding matrix among a plurality of precoding matrices stored in a storage using the precoding information and precodes the data items of the respective layers by simple operations consisting of at least one operation combination of addition, subtraction, selection, and inversion operations in accordance with a kind of the selected precoding matrix and a precoding operation pattern.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority to and the benefit of Korean PatentApplication No. 10-2013-0089089 filed in the Korean IntellectualProperty Office on Jul. 26, 2013, the entire contents of which areincorporated herein by reference.

BACKGROUND OF THE INVENTION

(a) Field of the Invention

The present invention relates to an encoding apparatus and an encodingmethod of a multiple input multiple output (MIMO) communication system.More particularly, the present invention relates to an encodingapparatus and an encoding method that may be applied to multiple inputmultiple output (MIMO) communication systems with different numbers ofantennas.

(b) Description of the Related Art

In a multiple input multiple output (MIMO) technology, transmitting andreceiving efficiency of data is improved by using multiple transmittingantennas and multiple receiving antennas.

The MIMO technology may be divided into a spatial multiplexing techniqueand a spatial diversity (SD) technique in accordance with a datatransmission method. In the spatial multiplexing technique, differentdata items are simultaneously transmitted from a transmitter to areceiver using the multiple transmitting antennas so that data may betransmitted at a higher speed without increasing bandwidth of a system.On the other hand, in the SD technique, the same data is transmitted bythe transmitter using the multiple transmitting antennas to obtaintransmission diversity.

In addition, the MIMO technology may be divided into an open loop methodand a closed loop method in accordance with whether channel informationis fed back from the receiver to the transmitter or not. In the openloop method, data is transmitted by the transmitter without the channelinformation being fed back from the receiver. On the other hand, in theclosed loop method, the data is transmitted by the transmitter with thechannel information being fed back from the receiver. In the open loopmethod, amounts of calculations are smaller than those in the closedloop method, however a diversity gain, a data rate, and a decodingcomplexity are contrary to each other.

A MIMO communication system is applied to various long term evolution(LTE) and wireless local area network (WLAN) standards. In the MIMOcommunication system, an encoder of the transmitter selects an optimalprecoding matrix using the channel information fed back from thereceiver, and combines the precoding matrix with data items ofrespective layers in order to transmit the data items to the multipletransmitting antennas. When the number of channel environments andantennas varies, an encoder suitable for the number of channelenvironments and antennas is required. Therefore, in a state where thenumbers of channel environments and antennas are different from eachother in various standards, new encoders must be designed.

SUMMARY OF THE INVENTION

A technical object of the present invention is to provide an encodingapparatus and an encoding method that may be applied although numbers ofchannel environments and antennas are different from each other.

According to an exemplary embodiment of the present invention, anencoding apparatus of a multiple input multiple output (MIMO)communication system is provided. The encoding apparatus includes astorage, a controller, an operation selector, and an operator. Thestorage stores a plurality of precoding matrices to correspond to aplurality of address values, respectively. The controller receivesprecoding information corresponding to data items of respective layersfrom an upper layer, selects a precoding matrix from the storage usingthe precoding information, and analyzes a kind of the selected precodingmatrix and a precoding operation pattern. The operation selector selectsone of spatial multiplexing precoding, spatial multiplexing simpleprecoding, and transmission diversity precoding in accordance with thekind of the precoding matrix and the precoding operation pattern. Theoperator precodes the data items of the respective layers in accordancewith the selected precoding.

The operator may include a spatial multiplexing operator for multiplyingthe selected precoding matrix and the data items of the respectivelayers to perform spatial multiplexing precoding, a spatial multiplexingsimple operator for performing simple operations consisting of at leastone operation combination of addition, subtraction, selection, andinversion operations on the data items of the respective layers toperform spatial multiplexing simple precoding, and a transmissiondiversity operator for performing transmission diversity precoding onthe selected precoding matrix and the data items of the respectivelayers.

The operation selector may select spatial multiplexing simple precodingwhen the selected precoding matrix is a spatial multiplexing precodingmatrix and it is determined from the precoding operation pattern thatprecoding may be performed by the simple operations.

The controller may determine whether precoding may be performed by thesimple operations from the precoding operation pattern.

The controller may determine that precoding may be performed by thesimple operations when the selected precoding matrix consists of atleast one of 0, 1, and −1.

The operation selector may select spatial multiplexing precoding whenthe selected precoding matrix is a spatial multiplexing precoding matrixand it is determined from the precoding operation pattern that theprecoding may not be performed by the simple operations.

The operation selector may select transmission diversity precoding whenthe selected precoding matrix is a transmission diversity precodingmatrix.

The controller may convert variable values applied to calculations ofthe plurality of precoding matrices into the plurality of addressvalues, and may store the plurality of precoding matrices in the storageto correspond to the plurality of address values.

The variable values may include at least one of the numbers oftransmitting antennas, transmission modes, numbers of layers, channelinformation, and codebook indices.

According to another exemplary embodiment of the present invention, anencoding method of an encoding apparatus of a MIMO communication systemis provided. The encoding method includes receiving precodinginformation corresponding to data items of respective layers to betransmitted from an upper layer, selecting a precoding matrix among aplurality of precoding matrices stored in a storage using the precodinginformation, selecting one of spatial multiplexing precoding, spatialmultiplexing simple precoding, and transmission diversity precoding inaccordance with a kind of the selected precoding matrix and a precodingoperation pattern, and precoding the data items of the respective layersin accordance with the selected precoding.

The encoding method may further include converting variable valuesapplied to calculations of the plurality of precoding matrices into theplurality of address values, and storing the plurality of precodingmatrices in the storage to correspond to the plurality of addressvalues.

The variable values may include at least one of the numbers oftransmitting antennas, transmission modes, numbers of layers, channelinformation, and codebook indices.

Selecting one of spatial multiplexing precoding, spatial multiplexingsimple precoding, and transmission diversity precoding in accordancewith a kind of the selected precoding matrix and a precoding operationpattern may include selecting spatial multiplexing simple precoding whenthe selected precoding matrix is a spatial multiplexing precoding matrixand it is determined that precoding may be performed by simpleoperations consisting of at least one operation combination of addition,subtraction, selection, and inversion operations in the selectedprecoding matrix. Precoding the data items of the respective layers inaccordance with the selected precoding may include performing the simpleoperations on the data items of the respective layers to precode thedata items of the respective layers.

Selecting the spatial multiplexing simple precoding may includedetermining that precoding may be performed by the simple operationswhen the selected precoding matrix consists of at least one of 0, 1, and−1.

Selecting one of spatial multiplexing precoding, spatial multiplexingsimple precoding, and transmission diversity precoding in accordancewith a kind of the selected precoding matrix and a precoding operationpattern may include selecting spatial multiplexing precoding when theselected precoding matrix is a spatial multiplexing precoding matrix andit is determined that precoding may be performed by multiplicationoperations in the selected precoding matrix. Precoding the data items ofthe respective layers in accordance with the selected precoding mayinclude multiplexing the data items of the respective layers and theselected precoding matrix to precode the data items of the respectivelayers.

Selecting one of spatial multiplexing precoding, spatial multiplexingsimple precoding, and transmission diversity precoding in accordancewith a kind of the selected precoding matrix and a precoding operationpattern may include selecting transmission diversity precoding when theselected precoding matrix is a transmission diversity precoding matrix.Precoding the data items of the respective layers in accordance with theselected precoding may include multiplexing the data items of therespective layers and the selected precoding matrix to precode the dataitems of the respective layers.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a view illustrating an example of a transmitting apparatus ofa multiple input multiple output (MIMO) communication system accordingto an exemplary embodiment of the present invention.

FIG. 2 is a view illustrating a MIMO encoder according to an exemplaryembodiment of the present invention.

FIG. 3 is a flowchart illustrating a precoding method of a MIMO encoderaccording to an exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

In the following detailed description, only certain exemplaryembodiments of the present invention have been shown and described,simply by way of illustration. As those skilled in the art wouldrealize, the described embodiments may be modified in various differentways, all without departing from the spirit or scope of the presentinvention. Accordingly, the drawings and description are to be regardedas illustrative in nature and not restrictive. Like reference numeralsdesignate like elements throughout the specification.

In the entire specification and claims, unless explicitly described tothe contrary, the word “comprise” and variations such as “comprises” or“comprising” will be understood to imply the inclusion of statedelements but not the exclusion of any other elements.

Hereinafter, an encoding apparatus and an encoding method of a multipleinput multiple output (MIMO) communication system according to anexemplary embodiment of the present invention will be described indetail with reference to the accompanying drawings.

FIG. 1 is a view illustrating an example of a transmitting apparatus ofa MIMO communication system according to an exemplary embodiment of thepresent invention.

Referring to FIG. 1, a transmitting apparatus 100 of a MIMOcommunication system, for example, a MIMO-orthogonal frequency divisionmultiplexing (OFDM) system using an OFDM method, includes a channelencoder 110, a symbol modulator 120, a MIMO encoder 130, and an inversefast Fourier transform (IFFT) processor 140, and a plurality oftransmitting antennas 150.

The channel encoder 110 channel encodes input bit streams of respectivelayers, and outputs the channel encoded data of the respective layers tothe symbol modulator 120. A channel encoding method includes convolutionencoding, turbo encoding, and low-density parity-check (LDPC) encoding.

The symbol modulator 120 symbol-maps the channel encoded data of therespective layers through digital modulation such as binary phase shiftkeying (BPSK), quadrature amplitude modulation (QAM), 16-QAM, and 64-QAMto output the symbol mapped data to the MIMO encoder 130.

The MIMO encoder 130 MIMO encodes data symbols of the respective layersthat are output from the symbol modulator 120. MIMO encoding meansprocessing the data symbols by a previously appointed method intransmitting the data symbols through the plurality of transmittingantennas 150 in order to increase capacity, throughput, and coverage ofthe MIMO communication system.

The MIMO encoder 130 selects a precoding matrix and precodes the datasymbols of the respective layers using the selected precoding matrix tooutput the precoded data symbols to the IFFT processor 140. In theprecoding matrix, the number of rows is equal to the number oftransmitting antennas and the number of columns is equal to the numberof layers.

The IFFT processor 140 performs IFFT on the precoded data symbols totransmit the data symbols on which the IFFT is performed through thecorresponding transmitting antennas 150. The IFFT is a process ofmodulating the data symbols using a plurality of carriers to convert afrequency domain signal into a time domain signal.

FIG. 2 is a view illustrating a MIMO encoder according to an exemplaryembodiment of the present invention.

Referring to FIG. 2, the MIMO encoder 130 includes a storage 131, acontroller 132, an operation selector 133, a spatial multiplexingoperator 134, a spatial multiplexing simple operator 135, and atransmission diversity operator 136.

The storage 131 stores the precoding matrix. The precoding matrix may bedivided into a diversity precoding matrix and a spatial multiplexingprecoding matrix in accordance with a transmission method. The diversityprecoding matrix is a precoding matrix that may be operated to providetransmission diversity, and the spatial multiplexing precoding matrix isa precoding matrix that may be operated to provide spatial multiplexing.In addition, the spatial multiplexing precoding matrix may be dividedinto a closed loop method and an open loop method. Precoding matrices ofthe respective methods are previously calculated, and the previouslycalculated precoding matrices are stored in the storage 131 through thecontroller 132. The storage 131 may vary in accordance with a realizingmethod such as a read only memory (ROM), a random access memory (RAM),and a register.

Table 1 and Table 2 illustrate spatial multiplexing precoding matricesof a closed loop method in a long term evolution (LTE) system.

TABLE 1 Codebook Number of layers υ index 1 2 0$\frac{1}{\sqrt{2}}\begin{bmatrix}1 \\1\end{bmatrix}$ $\frac{1}{\sqrt{2}}\begin{bmatrix}1 & 0 \\0 & 1\end{bmatrix}$ 1 $\frac{1}{\sqrt{2}}\begin{bmatrix}1 \\{- 1}\end{bmatrix}$ $\frac{1}{2}\begin{bmatrix}1 & 1 \\1 & {- 1}\end{bmatrix}$ 2 $\frac{1}{\sqrt{2}}\begin{bmatrix}1 \\j\end{bmatrix}$ $\frac{1}{2}\begin{bmatrix}1 & 1 \\j & {- j}\end{bmatrix}$ 3 $\frac{1}{\sqrt{2}}\begin{bmatrix}1 \\{- j}\end{bmatrix}$ —

TABLE 2 Codebook Number of layers ν index u_(n) 1 2 3 4 0 u₀ = [1 −1 −1−1]^(T) W₀ ^({1}) W₀ ^({14})/{square root over (2)} W₀ ^({124})/{squareroot over (3)} W₀ ^({1234})/2 1 u₁ = [1 −j 1 j]^(T) W₁ ^({1}) W₁^({12})/{square root over (2)} W₁ ^({123})/{square root over (3)} W₁^({1234})/2 2 u₂ = [1 1 −1 1]^(T) W₂ ^({1}) W₂ ^({12})/{square root over(2)} W₂ ^({123})/{square root over (3)} W₂ ^({3214})/2 3 u₃ = [1 j 1−j]^(T) W₃ ^({1}) W₃ ^({12})/{square root over (2)} W₃ ^({123})/{squareroot over (3)} W₃ ^({3214})/2 4 u₄ = [1 (−1 − j)/{square root over (2)}−j (1 − j)/{square root over (2)}]^(T) W₄ ^({1}) W₄ ^({14})/{square rootover (2)} W₄ ^({124})/{square root over (3)} W₄ ^({1234})/2 5 u₅ = [1 (1− j)/{square root over (2)} j (−1 − j)/{square root over (2)}]^(T) W₅^({1}) W₅ ^({14})/{square root over (2)} W₅ ^({124})/{square root over(3)} W₅ ^({1234})/2 6 u₆ = [1 (1 + j)/{square root over (2)} −j (−1 +j)/{square root over (2)}]^(T) W₆ ^({1}) W₆ ^({13})/{square root over(2)} W₆ ^({134})/{square root over (3)} W₆ ^({1324})/2 7 u₇ = [1 (−1 +j)/{square root over (2)} j (1 + j)/{square root over (2)}]^(T) W₇^({1}) W₇ ^({13})/{square root over (2)} W₇ ^({134})/{square root over(3)} W₇ ^({1324})/2 8 u₈ = [1 −1 1 1]^(T) W₈ ^({1}) W₈ ^({12})/{squareroot over (2)} W₈ ^({124})/{square root over (3)} W₈ ^({1234})/2 9 u₉ =[1 −j −1 −j]^(T) W₉ ^({1}) W₉ ^({14})/{square root over (2)} W₉^({134})/{square root over (3)} W₉ ^({1234})/2 10 u₁₀ = [1 1 1 −1]^(T)W₁₀ ^({1}) W₁₀ ^({13})/{square root over (2)} W₁₀ ^({123})/{square rootover (3)} W₁₀ ^({1324})/2 11 u₁₁ = [1 j −1 j]^(T) W₁₁ ^({1}) W₁₁^({13})/{square root over (2)} W₁₁ ^({134})/{square root over (3)} W₁₁^({1324})/2 12 u₁₂ = [1 −1 −1 1]^(T) W₁₂ ^({1}) W₁₂ ^({12})/{square rootover (2)} W₁₂ ^({123})/{square root over (3)} W₁₂ ^({1234})/2 13 u₁₃ =[1 −1 1 −1]^(T) W₁₃ ^({1}) W₁₃ ^({13})/{square root over (2)} W₁₃^({123})/{square root over (3)} W₁₃ ^({1324})/2 14 u₁₄ = [1 1 −1 −1]^(T)W₁₄ ^({1}) W₁₄ ^({13})/{square root over (2)} W₁₄ ^({123})/{square rootover (3)} W₁₄ ^({3214})/2 15 u₁₅ = [1 1 1 1]^(T) W₁₅ ^({1}) W₁₅^({12})/{square root over (2)} W₁₅ ^({123})/{square root over (3)} W₁₅^({1234})/2

In Table 2, u represents a generating vector defined in a standard ofthe LTE system for generating a 4*4 householder matrix. That is, 16generating vectors are defined in accordance with codebook indices,precoding matrices W_(n) (n=0, . . . , 15) are generated in accordancewith equations of Table 2, and precoding matrix coefficients aregenerated in Table 2 using columns of the respective precoding matricesW_(n) in accordance with the number of layers. After the generatedprecoding matrix coefficients are stored in addresses of correspondingstorages, the generated precoding matrix coefficients are used forprecoder operations.

The precoding matrices of Table 1 and Table 2 may be stored in thestorage 131 through a storage interface.

The controller 132 may map the previously calculated precoding matricesto corresponding address values to store the mapped precoding matricesin the storage 131. At this time, the address values are obtained byconverting at least one of information such as the numbers of antennas,transmission modes, the numbers of layers, channel information, andcodebook numbers that are applied to the calculated precoding matrices.That is, the controller 132 converts at least one of the informationsuch as the numbers of antennas, the transmission modes, the numbers oflayers, the channel information, and the codebook numbers that areapplied to the calculated precoding matrices into the address values,and stores the corresponding precoding matrices in the storage 131 tocorrespond to the converted address values. For example, when the numberof antennas is 4 and a transmission mode is closed loop transmission,since C₄=16 codebooks and L₄=4 layers exist, N≧log₁(16*4) precodingmatrices are required. At this time, the controller 132 may determinebit numbers of the address values as N≧log₁(18*4), that is, five bits,to change the address values. That is, when a codebook index is 1 andone layer is used by the transmitting apparatus 100, a coefficient valueof a precoding matrix corresponding to an address value 1 (a binarynumeral=00001) may be stored in the storage 131 and may be read andwritten.

Table 3 represents variables required for the spatial multiplexingprecoding matrix.

TABLE 3 Variable Magnitude Description The number of C_(n) n∈ A_(N) ={2, 4, 8, . . . , N} codebooks n: the number of antennas The number ofantenna K K = n(A_(N))_(n) ( ): the number of combinations elements of aset The number of layers L_(n) L_(n) = n(M) M = {1, 2, . . . , n − 1, n}n: the number of antennas Transmission mode 2 Open loop transmissionmode and closed loop transmission mode

As described above, when the precoding matrices of the respectivemethods are stored, precoding may be performed without designing theMIMO encoder 130 again in states where the numbers of channelenvironments and antennas are different from each other in variousstandards. That is, when the number of antennas is increased or thenumber of codebooks supported by a standard is increased, precodingmatrix coefficients are increased. When an interface is simply correctedby increasing magnitudes of address bit numbers of interface relatedsignals (for example, memory interface signals) and the number (or thenumber of banks) of storages 131, a design of a precoding matrix may beextended.

The controller 132 receives a control signal of data to be transmittedfrom an upper layer, and selects an optimal precoding matrix from thestorage 131 in accordance with the control signal. The control signalmay include information such as the number of antennas, a transmissionmode, the number of layers, channel information, and a codebook number.

The controller 132 analyzes the selected precoding matrix to grasp aprecoding operation pattern and a kind of the precoding matrix, anddetermines whether the precoding matrix may be performed by combinationsof simple operations such as addition and subtraction operations withoutmultiplication and division operations from the precoding operationpattern.

For example, it is assumed that the number of layers is 2, the number oftransmitting antennas is 4, and a spatial multiplexing precoding matrixto be operated with a 0th data symbol to a spatial multiplexingprecoding matrix to be operated with a seventh data symbol areperiodically changed every eight symbols. When the spatial multiplexingprecoding matrix [w(0)] to be operated with the 0th data symbol to thespatial multiplexing precoding matrix [w(7)] to be operated with theseventh data symbol consist of 0, 1, and −1 as illustrated in Equation1, the controller 132 may determine that precoding may be performed onlyby combinations of simple operations in the corresponding precodingmatrices [w(0) to w(7)].

$\begin{matrix}{{{{w(0)} = \begin{bmatrix}1 & 0 \\1 & 0 \\0 & 1 \\0 & {- 1}\end{bmatrix}},{{w(1)} = \begin{bmatrix}0 & 1 \\0 & 1 \\1 & 0 \\{- 1} & 0\end{bmatrix}},{{w(2)} = \begin{bmatrix}0 & 1 \\1 & 0 \\0 & {- 1} \\1 & 0\end{bmatrix}},{{w(3)} = \begin{bmatrix}1 & 0 \\0 & 1 \\{- 1} & 0 \\0 & 1\end{bmatrix}}}{{{w(4)} = \begin{bmatrix}1 & 0 \\0 & {- 1} \\1 & 0 \\0 & {- 1}\end{bmatrix}},{{w(5)} = \begin{bmatrix}0 & 1 \\{- 1} & 0 \\0 & 1 \\1 & 0\end{bmatrix}},{{w(6)} = \begin{bmatrix}0 & 1 \\0 & {- 1} \\{- 1} & 0 \\{- 1} & 0\end{bmatrix}},{{w(7)} = \begin{bmatrix}1 & 0 \\{- 1} & 0 \\0 & {- 1} \\0 & {- 1}\end{bmatrix}}}} & \left( {{Equation}\mspace{14mu} 1} \right)\end{matrix}$

That is, when the precoding matrices consist of 0, 1, and −1, amounts ofcalculations are increased when multiplication operations are performed.In particular, in a precoding operation pattern where values ofprecoding matrices corresponding to respective layers are 0 and 1 or 0and −1 as illustrated in Equation 1, since one of data symbols of thetwo layers is to be selected, the controller 132 may determine thatprecoding may be performed only by combinations of simple operations inthe corresponding precoding matrices. In this case, the spatialmultiplexing simple operator 135 may perform precoding only by amultiplexor for selecting one of the data symbols of the two layers andan inverter for inverting the selected symbol.

In addition, when the number of layers is 2, the number of transmittingantennas is 2, and a spatial multiplexing precoding matrix (w) is asillustrated in Equation 2, the controller 132 may determine thatprecoding may be performed by combinations of simple operations in thecorresponding precoding matrix (w).

$\begin{matrix}{{w = \begin{bmatrix}1 & 1 \\1 & {- 1}\end{bmatrix}}{or}{w = \begin{bmatrix}1 & 1 \\{- 1} & 1\end{bmatrix}}} & \left( {{Equation}\mspace{14mu} 2} \right)\end{matrix}$

That is, in a precoding operation pattern where values of a precodingmatrix corresponding to respective layers are 1 and 1 or 1 and −1, sinceprecoding may be performed only by addition and subtraction operations,the controller 132 may determine that precoding may be performed only bycombinations of simple operations in the corresponding precoding matrix.In this case, the spatial multiplexing simple operator 135 may performprecoding only by an adder and a subtractor for adding and subtractingthe data symbols of the two layers and an inverter for inverting thedata symbols of the layers.

As described above, the controller 132 may analyze the values of theprecoding matrix to determine whether precoding may be performed by atleast one operation combination of selection, inversion, addition, andsubtraction operations without relatively complex multiplication anddivision operations in the corresponding precoding matrix.

The controller 132 delivers an address value of the selected precodingmatrix, a kind of the precoding matrix, and whether precoding may beperformed by simple operations to the operation selector 133. At thistime, the controller 132 may control the simple operations of thespatial multiplexing simple operator 135 with reference to thecorresponding precoding matrix so that the spatial multiplexing simpleoperator 135 may perform precoding without the corresponding precodingmatrix when it is determined that precoding may be performed by thesimple operations in the corresponding precoding matrix.

The operation selector 133 selects one operator to perform precodingamong the spatial multiplexing operator 134, the spatial multiplexingsimple operator 135, and the transmission diversity operator 136 usingthe kind of the precoding matrix and whether precoding may be performedby the simple operations, and delivers the data symbols of therespective layers and the address value of the precoding matrix to theselected operator. At this time, the selected operator receives theprecoding matrix corresponding to the address value from the storage131, and precodes the data symbols of the respective layers using theprecoding matrix.

The spatial multiplexing operator 134 precodes the data symbols of therespective layers using a spatial multiplexing precoding matrix. Thatis, the spatial multiplexing operator 134 multiplies the spatialmultiplexing precoding matrix corresponding to the address value by thedata symbols of the respective layers to output the multiplicationresults. Therefore, the spatial multiplexing operator 134 requiresmultiplication operations in order to perform precoding and performsprecoding by operation combinations of multiplication, addition, andsubtraction operations. The spatial multiplexing operator 134 mayperform division operations in accordance with the spatial multiplexingprecoding matrix.

The spatial multiplexing simple operator 135 precodes the data symbolsof the respective layers in accordance with the simple operation controlof the controller 132. At this time, the spatial multiplexing operator134 multiplies or divides the spatial multiplexing precoding matrix andthe data symbols of the respective layers. However, the spatialmultiplexing simple operator 135 adds or subtracts the data symbols ofthe respective layers without the spatial multiplexing precoding matrixto precode the data symbols of the respective layers. As describedabove, when precoding is performed by the spatial multiplexing simpleoperator 135, precoding operation complexity may be reduced.

The transmission diversity operator 136 precodes the data symbols of therespective layers using a diversity precoding matrix.

FIG. 3 is a flowchart illustrating a precoding method of a MIMO encoderaccording to an exemplary embodiment of the present invention.

Referring to FIG. 3, when data items to be transmitted are generated inrespective layers, an upper layer determines a transmission mode usinginformation such as the number of transmitting antennas, the number oflayers, channel information, and a codebook index, and delivers acontrol signal including the information on a precoding matrix such asthe number of transmitting antennas, the transmission mode, the numberof layers, the channel information, and the codebook index to thecontroller 132 of the MIMO encoder 130.

When the controller 132 receives the control signal from the upper layer(S310), a precoding matrix is selected from the storage 131 using theprecoding information of the precoding matrix included in the controlsignal (S320). The controller 131 determines a kind of the selectedprecoding matrix and whether precoding may be performed by simpleoperations (S330).

The controller 132 delivers an address value of the precoding matrix,the kind of the precoding matrix, and whether precoding may be performedby the simple operations to the operation selector 133.

The operation selector 133 receives data symbols of the respectivelayers. The operation selector 133 selects one operator to performprecoding among the spatial multiplexing operator 134, the spatialmultiplexing simple operator 135, and the transmission diversityoperator 136 using the kind of the precoding matrix and whetherprecoding may be performed by the simple operations (S340), and deliversthe data symbols of the respective layers and the address value of theprecoding matrix to the selected operator.

The operator selected among the spatial multiplexing operator 134, thespatial multiplexing simple operator 135, and the transmission diversityoperator 136 receives the precoding matrix corresponding to the addressvalue from the storage 131 (S350) and precodes the data symbols of therespective layers using the received precoding matrix (S360).

According to the exemplary embodiment of the present invention, MIMOencoders of various standards may be supported by one encoder.

The exemplary embodiment of the present invention is not realized onlyby the above-described apparatus and/or method, but may also be realizedby a program for realizing a function corresponding to configuration ofthe exemplary embodiment of the present invention and a recording mediumin which the program is recorded. Such realization may be easilyperformed by those skilled in the art.

While this invention has been described in connection with what ispresently considered to be practical exemplary embodiments, it is to beunderstood that the invention is not limited to the disclosedembodiments, but, on the contrary, is intended to cover variousmodifications and equivalent arrangements included within the spirit andscope of the appended claims.

What is claimed is:
 1. An encoding apparatus of a multiple inputmultiple output (MIMO) communication system, comprising: a storage forstoring a plurality of precoding matrices to correspond to a pluralityof address values, respectively; a controller for receiving precodinginformation corresponding to data items of respective layers from anupper layer, selecting a precoding matrix from the storage based on theprecoding information, and analyzing a kind of the selected precodingmatrix and a precoding operation pattern; wherein the upper layerdetermines a transmission mode using a number of transmitting antennasand a number of layers obtained from the selected precoding matrix; anoperation selector for selecting one of spatial multiplexing precoding,spatial multiplexing simple precoding, or transmission diversityprecoding in accordance with the kind of the selected precoding matrixand the precoding operation pattern; and an operator for precoding thedata items of the respective layers in accordance with the selectedprecoding matrix.
 2. The encoding apparatus of claim 1, wherein theoperator comprises: a spatial multiplexing operator for multiplying theselected precoding matrix and the data items of the respective layers toperform the spatial multiplexing precoding; a spatial multiplexingsimple operator for performing simple operations consisting of at leastone operation combination of addition, subtraction, selection, andinversion operations on the data items of the respective layers toperform the spatial multiplexing simple precoding; and a transmissiondiversity operator for performing the transmission diversity precodingon the selected precoding matrix and the data items of the respectivelayers.
 3. The encoding apparatus of claim 2, wherein the operationselector selects the spatial multiplexing simple precoding when theselected precoding matrix is a spatial multiplexing precoding matrix andit is determined from the precoding operation pattern that the precodingthe data items may be performed by the simple operations.
 4. Theencoding apparatus of claim 3, wherein the controller determines whetherthe precoding the data items may be performed by the simple operationsfrom the precoding operation pattern.
 5. The encoding apparatus of claim3, wherein the controller determines that the precoding the data itemsmay be performed by the simple operations when the selected precodingmatrix consists of at least one of 0, 1, or −1.
 6. The encodingapparatus of claim 2, wherein the operation selector selects the spatialmultiplexing precoding when the selected precoding matrix is a spatialmultiplexing precoding matrix and it is determined from the precodingoperation pattern that the precoding the data items may not be performedby the simple operations.
 7. The encoding apparatus of claim 2, whereinthe operation selector selects the transmission diversity precoding whenthe selected precoding matrix is a transmission diversity precodingmatrix.
 8. The encoding apparatus of claim 2, wherein the controllerconverts variable values applied to calculations of the plurality ofprecoding matrices into the plurality of address values, and stores theplurality of precoding matrices in the storage to correspond to theplurality of address values.
 9. The encoding apparatus of claim 8,wherein the variable values comprise at least one of the number oftransmitting antennas, transmission modes, numbers of layers, channelinformation, or codebook indices.
 10. An encoding method of an encodingapparatus of a multiple input multiple output (MIMO) communicationsystem, the encoding method comprising: receiving precoding informationcorresponding to data items of respective layers to be transmitted froman upper layer; wherein the upper layer determines a transmission modeusing a number of transmitting antennas and a number of layers obtainedfrom the selected precoding matrix; selecting a precoding matrix among aplurality of precoding matrices stored in a storage based on theprecoding information, and analyzing a kind of the selected precodingmatrix and a precoding operation pattern; selecting one of spatialmultiplexing precoding, spatial multiplexing simple precoding, ortransmission diversity precoding in accordance with the kind of theselected precoding matrix and the precoding operation pattern; andprecoding the data items of the respective layers in accordance with theselected precoding matrix.
 11. The encoding method of claim 10, furthercomprising: converting variable values applied to calculations of theplurality of precoding matrices into a plurality of address values; andstoring the plurality of precoding matrices in the storage to correspondto the plurality of address values.
 12. The encoding method of claim 11,wherein the variable values comprise at least one of the number oftransmitting antennas, the transmission modes, the numbers of layers,the channel information, or the codebook indices.
 13. The encodingmethod of claim 11, wherein selecting the one of the spatialmultiplexing precoding, the spatial multiplexing simple precoding, andthe transmission diversity precoding in accordance with the kind of theselected precoding matrix and a precoding operation pattern comprisesselecting the spatial multiplexing simple precoding when the selectedprecoding matrix is a spatial multiplexing precoding matrix and it isdetermined that a precoding may be performed by simple operationsconsisting of at least one operation combination of addition,subtraction, selection, and inversion operations in the selectedprecoding matrix, and precoding the data items of the respective layersin accordance with the selected precoding comprises performing thesimple operations on the data items of the respective layers to precodethe data items of the respective layers.
 14. The encoding method ofclaim 13, wherein selecting the spatial multiplexing simple precodingcomprises determining that precoding the data items may be performed bythe simple operations when the selected precoding matrix consists of atleast one of 0, 1, or −1.
 15. The encoding method of claim 10, whereinselecting the one of the spatial multiplexing precoding, the spatialmultiplexing simple precoding, and the transmission diversity precodingin accordance with the kind of the selected precoding matrix and aprecoding operation pattern comprises selecting the spatial multiplexingprecoding when the selected precoding matrix is a spatial multiplexingprecoding matrix and it is determined that a precoding may be performedby multiplication operations in the selected precoding matrix, andprecoding the data items of the respective layers in accordance with theselected precoding comprises multiplexing the data items of therespective layers and the selected precoding matrix to precode the dataitems of the respective layers.
 16. The encoding method of claim 10,wherein selecting the one of the spatial multiplexing precoding, thespatial multiplexing simple precoding, and the transmission diversityprecoding in accordance with the kind of the selected precoding matrixand a precoding operation pattern comprises selecting transmissiondiversity precoding when the selected precoding matrix is a transmissiondiversity precoding matrix, and precoding the data items of therespective layers in accordance with the selected precoding comprisesmultiplexing the data items of the respective layers and the selectedprecoding matrix to precode the data items of the respective layers.